A data center is a facility that houses computer systems and various networking, storage, and other related components. Many organizations and businesses operate and maintain data centers to provide computing and information services to support their day-to-day operations. Data centers may also provide computing services on a permanent or an as-needed basis to businesses and individuals as a remote computing service or to provide “platforms as a service” or “software as a service” (e.g., cloud computing). The computing resources provided by a data center may include various types of resources, such as data processing resources, data storage resources, data communication resources, and the like.
To facilitate increased utilization of data center resources, virtualization technologies may allow a single physical computing machine to host one or more instances of virtual machines (VMs) that appear and operate as independent computer machines to a remotely connected computer user. With virtualization, the single physical computing device can create, maintain, or delete virtual machines in a dynamic manner. When a customer of a data center requests a new virtual machine instance, the data center may provide a virtual machine management service that identifies a “slot” for executing the new instance. Customers may sometimes request changes to a virtual machine instance or request a particular configuration. Some changes may require updates to firmware—a combination of software and hardware such as a hardware device with data stored in read-only memory.